Initiate Payment (v1)

Initiate Payment

Overview

Initiate a new payment. Payment can be initiated with either counterpartyId or counterparty details. For initiation with counterpartyId, counterpartyId field is mandatory. For initiation with counterparty details, creditorAccount and creditorName are mandatory. Providing both counterpartyId and counterparty details like creditorAddress will result in 400 Bad request response.

POST (/internal/v1/parties/{partyId}/payments)

Parameters

  • partyId (path) (required): The ID of the party that owns the accounts. See PartyId Model.

  • plmr-idempotency-key (header) (required): The idempotency key for the request. See plmrIdempotencyKey model.

  • X-Request-ID (header): Request id is used for tracing, if not provided, a new one will be generated. See xRequestId model.

  • plmr-mfa-challenge-id (header): MFA challenge id. See plmrMfaChallengeId model.

  • plmr-mfa-signature (header): MFA signature from 401 response. See plmrMfaSignature model.

  • plmr-user-action (header): Header used to indicate whether the request is user initiated request. When set to true, the user session gets extended with the default session timeout. When set to false, or header is not present the user session is not extended. See plmrUserAction model.

  • X-Device-Integrity-Token (header): Device integrity token obtains from Google/Apple. See xDeviceIntegrityToken model.

  • Authorization (header) (required): Authorization JWT access token obtained from keycloak. If the header is missing, has the wrong format or the token is expired an Unauthorized 401 response will be returned. See Authorization model.

Request Body

Responses

202 Accepted

Body of the response for a successful payment initiation request.

400 Bad Request

401 Unauthorized

401 response for operation that requires mfa

409 Conflict

423

500 Internal Server Error

Architecture

60 properties

Generic Body for a payment initiation via JSON.

counterpartyId string

The Id of the counterparty.

Max length: 36
paymentMethodId string

The Id of the payment method.

Min length: 36
Max length: 36
endToEndIdentification string
Max length: 35
debtorAccount object
required

Details of the account from which the amount will be debited.

instructedAmount object
required
creditorAccount object

Reference to a creditor account.

creditorAgent string

BICFI

Match pattern: [A-Z]{6,6}[A-Z2-9][A-NP-Z0-9]([A-Z0-9]{3,3}){0,1}
creditorName string

Creditor name.

Max length: 70
debtorAddress object
creditorAddress object
remittanceInformationUnstructured string

Unstructured remittance information.

Max length: 140
remittanceInformationStructured object
paymentType object

Specifies the payment type. Allowed values: - SEPA Instant payment ``` "paymentType": { "serviceLevel": "SEPA", "localInstrument": "INST", "categoryPurpose": null, "routingPreference": "INSTANT" } } ``` - SEPA Regular payment ``` "paymentType": { "serviceLevel": "SEPA", "localInstrument": "SCT", "categoryPurpose": null, "routingPreference": "NONE" } } ``` - SEPA Any payment ``` "paymentType": { "serviceLevel": "SEPA", "localInstrument": null, "categoryPurpose": null, "routingPreference": "NONE" } } ``` - Internal payment ``` "paymentType": { "serviceLevel": "INTERNAL", "localInstrument": "INTERNAL", "categoryPurpose": null, "routingPreference": "NONE" } } ``` - SWIFT payment ``` "paymentType": { "serviceLevel": "SDVA", "localInstrument": "SWIFT", "categoryPurpose": null, "routingPreference": "HIGH_PRIORITY" } } ``` - OTHER payment ``` "paymentType": { "serviceLevel": "OTHER", "localInstrument": "OTHER", "categoryPurpose": null, "routingPreference": "NONE" } } ```

supplementaryData object

Additional information that cannot be captured in the structured elements and/or any other specific block.

2 properties

Body of the response for a successful payment initiation request.

paymentStatus string
required

The payment status is filled with codes of the ISO 20022 data table: - 'ACCC': 'AcceptedSettlementCompleted' - Settlement on the creditor's account has been completed. - 'RCVD': 'Received' - Payment initiation has been received by the receiving agent. - 'RJCT': 'Rejected' - Payment initiation or individual transaction included in the payment initiation has been rejected.

Allowed values: ACCC RCVD RJCT
paymentId string
required

Resource identification of the generated payment initiation resource.

7 properties
code string
Allowed values: urn:plmr:payments:api:COUNTERPARTY_INVALID_NAME urn:plmr:payments:api:COUNTERPARTY_ALREADY_EXIST urn:plmr:payments:api:COUNTERPARTY_ACCOUNT_ALREADY_EXIST urn:plmr:payments:api:COUNTERPARTY_PAYMENT_METHOD_ALREADY_EXIST urn:plmr:payments:api:COUNTERPARTY_DETAILS_PROPERTIES_NOT_FOUND urn:plmr:payments:api:COUNTERPARTY_NOT_FOUND urn:plmr:payments:api:PAYMENT_METHOD_NOT_FOUND urn:plmr:payments:api:MISSING_PAYMENT_METHOD_ID urn:plmr:payments:api:INVALID_INIT_PAYMENT_WITH_COUNTERPARTY urn:plmr:payments:api:INVALID_STANDING_ORDER_WITH_COUNTERPARTY urn:plmr:payments:api:INTERNAL_SERVER_ERROR urn:plmr:payments:api:BAD_REQUEST urn:plmr:payments:api:RESOURCE_UNKNOWN urn:plmr:payments:api:UNAUTHORIZED urn:plmr:payments:api:FORBIDDEN urn:plmr:payments:api:INVALID_PARAM urn:plmr:payments:api:WEB_APPLICATION urn:plmr:payments:api:PAYMENT_NOT_FOUND urn:plmr:payments:api:INVALID_IBAN_BANK_IDENTIFIER urn:plmr:payments:api:INVALID_DEBTOR_IBAN urn:plmr:payments:api:INVALID_CREDITOR_IBAN urn:plmr:payments:api:INVALID_AMOUNT_CURRENCY urn:plmr:payments:api:INVALID_DEBTOR_ACCOUNT_CURRENCY urn:plmr:payments:api:INVALID_CREDITOR_ACCOUNT_CURRENCY urn:plmr:payments:api:START_DATE_IN_THE_PAST urn:plmr:payments:api:STANDING_ORDER_ALREADY_STARTED urn:plmr:payments:api:INVALID_ONE_TIME_SCHEDULE urn:plmr:payments:api:INVALID_RECURRENT_SCHEDULE urn:plmr:payments:api:STANDING_ORDER_NOT_FOUND urn:plmr:payments:api:STANDING_ORDER_EXECUTING urn:plmr:payments:api:NO_SCHEDULED_EXECUTIONS urn:plmr:payments:api:IDENTICAL_QUOTE_CURRENCIES urn:plmr:payments:api:NULL_CURRENCY_EXCHANGE_DETAILS urn:plmr:payments:api:AMOUNT_IS_TOO_SMALL urn:plmr:payments:api:CURRENCY_EXCHANGE_TIME_WINDOW_CLOSED urn:plmr:payments:api:INVALID_INSTRUCTED_AMOUNT_CURRENCY urn:plmr:payments:api:DEVICE_INTEGRITY_TOKEN_NOT_FOUND
message string
requestId string
fieldErrors array [object]
7 properties

401 response for operation that requires mfa

code string
Allowed values: urn:plmr:payments:api:MFA_REQUIRED
message string
requestId string
Min length: 36
Max length: 36
mfaChallenge object

MFA response details

Title: MFAChallenge

3 properties
code string
Allowed values: urn:plmr:payments:api:IDEMPOTENCY_ERROR
message string
requestId string
3 properties
code string
Allowed values: urn:plmr:payments:api:IDEMPOTENCY_ERROR
message string
requestId string
7 properties
code string
Allowed values: urn:plmr:payments:api:COUNTERPARTY_INVALID_NAME urn:plmr:payments:api:COUNTERPARTY_ALREADY_EXIST urn:plmr:payments:api:COUNTERPARTY_ACCOUNT_ALREADY_EXIST urn:plmr:payments:api:COUNTERPARTY_PAYMENT_METHOD_ALREADY_EXIST urn:plmr:payments:api:COUNTERPARTY_DETAILS_PROPERTIES_NOT_FOUND urn:plmr:payments:api:COUNTERPARTY_NOT_FOUND urn:plmr:payments:api:PAYMENT_METHOD_NOT_FOUND urn:plmr:payments:api:MISSING_PAYMENT_METHOD_ID urn:plmr:payments:api:INVALID_INIT_PAYMENT_WITH_COUNTERPARTY urn:plmr:payments:api:INVALID_STANDING_ORDER_WITH_COUNTERPARTY urn:plmr:payments:api:INTERNAL_SERVER_ERROR urn:plmr:payments:api:BAD_REQUEST urn:plmr:payments:api:RESOURCE_UNKNOWN urn:plmr:payments:api:UNAUTHORIZED urn:plmr:payments:api:FORBIDDEN urn:plmr:payments:api:INVALID_PARAM urn:plmr:payments:api:WEB_APPLICATION urn:plmr:payments:api:PAYMENT_NOT_FOUND urn:plmr:payments:api:INVALID_IBAN_BANK_IDENTIFIER urn:plmr:payments:api:INVALID_DEBTOR_IBAN urn:plmr:payments:api:INVALID_CREDITOR_IBAN urn:plmr:payments:api:INVALID_AMOUNT_CURRENCY urn:plmr:payments:api:INVALID_DEBTOR_ACCOUNT_CURRENCY urn:plmr:payments:api:INVALID_CREDITOR_ACCOUNT_CURRENCY urn:plmr:payments:api:START_DATE_IN_THE_PAST urn:plmr:payments:api:STANDING_ORDER_ALREADY_STARTED urn:plmr:payments:api:INVALID_ONE_TIME_SCHEDULE urn:plmr:payments:api:INVALID_RECURRENT_SCHEDULE urn:plmr:payments:api:STANDING_ORDER_NOT_FOUND urn:plmr:payments:api:STANDING_ORDER_EXECUTING urn:plmr:payments:api:NO_SCHEDULED_EXECUTIONS urn:plmr:payments:api:IDENTICAL_QUOTE_CURRENCIES urn:plmr:payments:api:NULL_CURRENCY_EXCHANGE_DETAILS urn:plmr:payments:api:AMOUNT_IS_TOO_SMALL urn:plmr:payments:api:CURRENCY_EXCHANGE_TIME_WINDOW_CLOSED urn:plmr:payments:api:INVALID_INSTRUCTED_AMOUNT_CURRENCY urn:plmr:payments:api:DEVICE_INTEGRITY_TOKEN_NOT_FOUND
message string
requestId string
fieldErrors array [object]